#ifndef PFMENGINE_H
#define PFMENGINE_H

#include "pfm/kern_ll.h"
#include <pthread.h>
pthread_mutex_t line_mutex; // locks the current thread


//pthread_mutex_t chunk_queue_mutex = PTHREAD_MUTEX_INITIALIZER;
typedef struct
{
	f_state *s;
	f_info *i;
} PFM_SEARCH_ARG, *PPFM_SEARCH_ARG;

typedef struct
{
	PFM_SEARCH_ARG args;
	u_int64_t offset;
	u_int64_t offset_ptr;
	u_int64_t length;
	void *ptr;	
	
} PFM_FOREMOST, *PPFM_FOREMOST;

typedef struct
{
	char line[256];
	u_int64_t offset;
	LINKEDLIST queue_list; 
} LINE, *PLINE;

PLINKEDLIST line_queue;

void add_queue( PLINE add);

//PPFM_FOREMOST get_queue();
//void queue_chunk(PPFM_FOREMOST new_chunk);


#endif
